public class work1 {
    //力扣 209. 长度最小的子数组（滑动窗口(单向双指针））
    public int minSubArrayLen(int target, int[] nums) {
        int left=0;
        int right=0;
        long sum=0;//记录指定数组之和
        int ret=Integer.MAX_VALUE;//记录符合条件的最短长度
        boolean flg=true;
        while(right<nums.length){
            sum+=nums[right];
            while(sum>=target&&left<=right){
                flg=false;
                sum-=nums[left];
                ret=Math.min(ret,right-left+1);
                left++;
            }
            right++;
        }
        if(flg)return 0;
        return ret;
    }
}
